using System;
using System.Collections;
using System.Collections.Generic;

using ImPM.Data.Base;

namespace ImPM.Data.BusinessObjects
{
    public partial class CalendarException : BusinessBase<int>
    {
        #region Declarations

		
		private int _iDCalendar = default(Int32);
		private string _exceptionName = String.Empty;
		private System.DateTime _startDate = new DateTime();
		private System.DateTime _finishDate = new DateTime();
		
		
		
        #endregion

        #region Constructors

        public CalendarException() { }

        #endregion

        #region Methods

        public override int GetHashCode()
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            
            sb.Append(this.GetType().FullName);
			sb.Append(_iDCalendar);
			sb.Append(_exceptionName);
			sb.Append(_startDate);
			sb.Append(_finishDate);

            return sb.ToString().GetHashCode();
        }

        #endregion

        #region Properties

		public virtual int IDCalendar
        {
            get { return _iDCalendar; }
			set
			{
				OnIDCalendarChanging();
				_iDCalendar = value;
				OnIDCalendarChanged();
			}
        }
		partial void OnIDCalendarChanging();
		partial void OnIDCalendarChanged();
		
		public virtual string ExceptionName
        {
            get { return _exceptionName; }
			set
			{
				OnExceptionNameChanging();
				_exceptionName = value;
				OnExceptionNameChanged();
			}
        }
		partial void OnExceptionNameChanging();
		partial void OnExceptionNameChanged();
		
		public virtual System.DateTime StartDate
        {
            get { return _startDate; }
			set
			{
				OnStartDateChanging();
				_startDate = value;
				OnStartDateChanged();
			}
        }
		partial void OnStartDateChanging();
		partial void OnStartDateChanged();
		
		public virtual System.DateTime FinishDate
        {
            get { return _finishDate; }
			set
			{
				OnFinishDateChanging();
				_finishDate = value;
				OnFinishDateChanged();
			}
        }
		partial void OnFinishDateChanging();
		partial void OnFinishDateChanged();
		
        #endregion
    }
}
